{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "2f426bec",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "import torch.nn.functional as F\n",
    "import torch.optim as optim\n",
    "from torchvision import datasets,transforms"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "33890b99",
   "metadata": {},
   "outputs": [],
   "source": [
    "# 设置每个批次的样本数量\n",
    "batch_size = 32\n",
    "device = torch.device('cuda')\n",
    "# 创建训练数据加载器\n",
    "trainloader = torch.utils.data.DataLoader(datasets.FashionMNIST('data',train=True,download=True,\n",
    "                                                                transform=transforms.Compose([transforms.Resize((224,224)),\n",
    "                                                                                              transforms.ToTensor()])),\n",
    "                                          batch_size=batch_size,shuffle=True)\n",
    "# 创建测试数据加载器\n",
    "testloader = torch.utils.data.DataLoader(datasets.FashionMNIST('data',train=False,download=True,\n",
    "                                                               transform=transforms.Compose([transforms.Resize((224,224)),\n",
    "                                                                                             transforms.ToTensor()])),\n",
    "                                         batch_size=batch_size,shuffle=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "17f5ee28",
   "metadata": {},
   "outputs": [],
   "source": [
    "class Alex(nn.Module):\n",
    "    def __init__(self,):\n",
    "        super().__init__()\n",
    "        # 定义卷积层\n",
    "        self.conv1 = nn.Conv2d(1,96,kernel_size=11,stride=4,padding=1)\n",
    "        self.conv2 = nn.Conv2d(96,256,kernel_size=5,padding=2)\n",
    "        self.conv3 = nn.Conv2d(256,384,kernel_size=3,padding=1)\n",
    "        self.conv4 = nn.Conv2d(384,384,kernel_size=3,padding=1)\n",
    "        self.conv5 = nn.Conv2d(384,256,kernel_size=3,padding=1)\n",
    "        # 定义全连接层\n",
    "        self.fc1 = nn.Linear(6400,4096)\n",
    "        self.fc2 = nn.Linear(4096,4096)\n",
    "        # 分类层\n",
    "        self.clf = nn.Linear(4096,10)\n",
    "    def forward(self,x):\n",
    "        # 前向传播过程\n",
    "        x = F.relu(self.conv1(x))\n",
    "        x = F.max_pool2d(x,kernel_size=3,stride=2)\n",
    "        x = F.relu(self.conv2(x))\n",
    "        x = F.max_pool2d(x,kernel_size=3,stride=2)\n",
    "        x = F.relu(self.conv3(x))\n",
    "        x = F.relu(self.conv4(x))\n",
    "        x = F.relu(self.conv5(x))\n",
    "        x = F.max_pool2d(x,kernel_size=3,stride=2)\n",
    "        x = x.flatten(start_dim=1)\n",
    "        x = F.relu(self.fc1(x))\n",
    "        x = F.dropout(x,p=0.5)\n",
    "        x = F.relu(self.fc2(x))\n",
    "        x = F.dropout(x,p=0.5)\n",
    "        out = self.clf(x)\n",
    "        return out"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "2aa51396",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Alex(\n",
       "  (conv1): Conv2d(1, 96, kernel_size=(11, 11), stride=(4, 4), padding=(1, 1))\n",
       "  (conv2): Conv2d(96, 256, kernel_size=(5, 5), stride=(1, 1), padding=(2, 2))\n",
       "  (conv3): Conv2d(256, 384, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "  (conv4): Conv2d(384, 384, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "  (conv5): Conv2d(384, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
       "  (fc1): Linear(in_features=6400, out_features=4096, bias=True)\n",
       "  (fc2): Linear(in_features=4096, out_features=4096, bias=True)\n",
       "  (clf): Linear(in_features=4096, out_features=10, bias=True)\n",
       ")"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model = Alex().to(device)\n",
    "# 初始化 Adam 优化器\n",
    "optimizer = optim.Adam(model.parameters())\n",
    "model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "ed8a98c1",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "epochs:0, loss:0.6264, acc:0.8550\n",
      "epochs:1, loss:0.1319, acc:0.8664\n",
      "epochs:2, loss:0.2290, acc:0.8761\n",
      "epochs:3, loss:0.3156, acc:0.8768\n",
      "epochs:4, loss:0.4590, acc:0.8847\n"
     ]
    }
   ],
   "source": [
    "epochs = 5\n",
    "accs,losses = [],[]\n",
    "for epoch in range(epochs):\n",
    "     # 训练阶段\n",
    "    for batch_idx,(x,y) in enumerate(trainloader):\n",
    "        optimizer.zero_grad()# 梯度清零\n",
    "        x,y = x.to(device),y.to(device)\n",
    "        out = model(x) # 前向传播\n",
    "        loss =F.cross_entropy(out,y)# 计算损失\n",
    "        loss.backward()# 反向传播\n",
    "        optimizer.step()# 更新参数\n",
    "    # 测试阶段\n",
    "    correct = 0\n",
    "    testloss = 0\n",
    "    with torch.no_grad():\n",
    "        for batch_idx,(x,y) in enumerate(testloader):\n",
    "            x,y = x.to(device),y.to(device)\n",
    "            out = model(x)\n",
    "            testloss += F.cross_entropy(out,y)\n",
    "            pred = out.max(dim=1,keepdim=True)[1]# 获取预测结果\n",
    "            correct += pred.eq(y.view_as(pred)).sum().item()# 统计预测正确的数量\n",
    "        # 计算准确率和平均测试损失\n",
    "        acc = correct/len(testloader.dataset)\n",
    "        testloss = testloss/(batch_idx+1)\n",
    "         # 将准确率和损失值添加到列表中\n",
    "        accs.append(acc)\n",
    "        losses.append(testloss)\n",
    "        print('epochs:{}, loss:{:.4f}, acc:{:.4f}'.format(epoch,loss,acc))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "1a28de14",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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n3tm++6773j88cepUqVKgv0vvPBCip9fcpJ63smxs7OjVatWCfZVrlyZkydP2r7fvHkz+fPn55lnnklwXOfOnR8s6H8KFSpEo0aNEu0/fvw4L7zwAiVKlMDBwQFHR0fq168P3P5d3csTTzxBmTJlbN+7uLhQvnz5BM8tOVnhdRERyequXbvGjh07aN++Pfny5bPtd3BwoGvXrpw5c8bWBblGjRp8+eWXjBw5ku+//55///03wbkKFy5MuXLleOutt5gxYwZ79+4lLi7uvhkOHz7MuXPneOGFFxJ0Q/b29sbPz++Bn2NqrqkNGzYkf/78tu89PDwoXry47dpx7do1du/eTZs2bXBycrIdly9fvkTXnLRq3bq1rdfendatW0edOnXIly+f7f3P0qVLU3Q9jT/vnSpXrgyQomtqVnhdJGdS0S052rFjx9iyZQstWrTAMAwuX77M5cuXad++PUCCcbN//fXXfSe5SskxqeXq6kqBAgUS7IuLi8Pf358NGzbw+uuv880337Bz505++uknANsbgH/++YfY2NgUZRo4cCDffPMNhw8f5ubNmyxevJj27dtTokSJe97v0qVLSR5zv/ulhKenZ4qPdXV1xcXFJcE+Z2dnbty4Yfv+0qVLeHh4JLpvUvvSIqm8V69epV69euzYsYMJEybw/fffs2vXLjZs2ACQ6M1aUooUKZJon7Ozc4rumxVeFxGRrO6ff/7BMIwk/x8vWbIkgK37+OzZsxkxYgQff/wxDRs2pHDhwrRp08b2Qb2dnR3ffPMNTz/9NFOnTqVq1aoUK1aMgQMHJjnfSbz482fENTWp9xL3cr/rTvzrldnX1A0bNvD8889TqlQp3n//fX788Ud27dpFz549E1zX7uXu5xY/OVt6XI8z43WRnEljuiVHW7ZsGYZhsH79etavX5/o5++++y4TJkzAwcGBYsWKcebMmXueLyXHxBdAd09kldQEaECSk27s37+fX375hRUrViQYd37s2LEExxUuXBgHB4f7ZgKzZXrEiBHMmzePWrVqERERQf/+/e97vyJFiiQ5zjqpfS4uLomeN5jPvWjRoon2p/eEI0WKFGHnzp2J9ic3Tjy1ksr77bffcu7cOb7//ntb6zZw33F9mSmjXxcRkayuUKFC2NvbEx4enuhn586dA7Bdp9zc3HjzzTd58803OX/+vK3Vu1WrVrZJ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\n",
      "text/plain": [
       "<Figure size 1000x500 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "losses_cpu = [loss.cpu().item() for loss in losses]\n",
    "\n",
    "# 训练过程中的准确率和损失值\n",
    "plt.figure(figsize=(10, 5))\n",
    "plt.subplot(1, 2, 1)\n",
    "plt.plot(range(epochs), accs, label='Accuracy', color='blue')\n",
    "plt.xlabel('Epochs')\n",
    "plt.ylabel('Accuracy')\n",
    "plt.title('Accuracy during training')\n",
    "plt.legend()\n",
    "\n",
    "plt.subplot(1, 2, 2)\n",
    "plt.plot(range(epochs), losses_cpu, label='Loss', color='red')\n",
    "plt.xlabel('Epochs')\n",
    "plt.ylabel('Loss')\n",
    "plt.title('Loss during training')\n",
    "plt.legend()\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "aa9b2947",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
